-- $Id: CISCO-PAGENT-API-MIB.my,v 3.1.2.1 1997/06/18 17:58:57 kzhang Exp $
-- $Source: /nfs/repr/arkansas/cvs/Xsys/MIBS/CISCO-PAGENT-API-MIB.my,v $
--------------------------------------------------------------------
-- MIB to control Pagent API
--
-- June 1997 , Kui Zhang
--
-- Copyright (c) 1995-1998 by cisco Systems, Inc.
-- All rights reserved.
--------------------------------------------------------------------
-- $Log: CISCO-PAGENT-API-MIB.my,v $
-- Revision 3.1.2.1  1997/06/18 17:58:57  kzhang
-- Check in Pagent API MIB to Pagent_branch.
-- Branch: Pagent_branch
--
-- Revision 3.1  1997/06/18 17:24:04  kzhang
-- Add placeholder for Pagent API MIB.
--

--------------------------------------------------------------------
-- $Endlog$
--


CISCO-PAGENT-API-MIB DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY,
        OBJECT-TYPE,
        Integer32,
        Gauge32
                FROM SNMPv2-SMI
        TEXTUAL-CONVENTION,
        DisplayString,
        TruthValue
                FROM SNMPv2-TC
        MODULE-COMPLIANCE,
        OBJECT-GROUP
                FROM SNMPv2-CONF
--PSIM(Modif)   ciscoMgmt
        ciscoExperiment
                FROM CISCO-SMI;

ciscoPagentAPIMIB MODULE-IDENTITY
        LAST-UPDATED    "9704230000Z"
        ORGANIZATION    "Cisco Systems, Inc."
        CONTACT-INFO
                "       Cisco Systems
                        Customer Service

                Postal: 170 W Tasman Drive
                        San Jose, CA  95134
                        USA

                   Tel: +1 800 553-NETS

                E-mail: cs-snmp@cisco.com"
        DESCRIPTION
                "MIB module for controlling Cisco Pagent API"
        ::= { ciscoExperiment 998 }

ciscoPagentAPIObjects OBJECT IDENTIFIER ::= { ciscoPagentAPIMIB 1 }


-- beginning of ciscoPagentAPIMethodTable --

ciscoPagentAPIMethodTable OBJECT-TYPE
--PSIM(Modif)   SYNTAX      SEQUENCE OF CiscoPagentAPIArgsEntry
        SYNTAX      SEQUENCE OF CiscoPagentAPIMethodEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "Table to contain API names to call"
        ::= { ciscoPagentAPIObjects 1 }

ciscoPagentAPIMethodEntry OBJECT-TYPE
        SYNTAX      CiscoPagentAPIMethodEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "An entry in the table"
        INDEX       { ciscoPagentAPIMethodChannel }
        ::= { ciscoPagentAPIMethodTable 1 }

CiscoPagentAPIMethodEntry ::=
        SEQUENCE {
                ciscoPagentAPIMethodChannel INTEGER,
                ciscoPagentAPIMethodString DisplayString
        }

ciscoPagentAPIMethodChannel OBJECT-TYPE
        SYNTAX          INTEGER (0..9)
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
                "The index of the channel of PCP"
        ::= { ciscoPagentAPIMethodEntry 1 }

ciscoPagentAPIMethodString OBJECT-TYPE
        SYNTAX          DisplayString
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION     
                "The argument value"
        ::= { ciscoPagentAPIMethodEntry 2 }

-- end of ciscoPagentAPIMethodTable --

-- beginning of ciscoPagentAPIArgsTable --

ciscoPagentAPIArgsTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF CiscoPagentAPIArgsEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "Table to contain arguments to APIs"
        ::= { ciscoPagentAPIObjects 2 }

ciscoPagentAPIArgsEntry OBJECT-TYPE
        SYNTAX      CiscoPagentAPIArgsEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "An entry in the argument table"
        INDEX       { ciscoPagentAPIArgsChannel, ciscoPagentAPIArgsIndex }
        ::= { ciscoPagentAPIArgsTable 1 }

CiscoPagentAPIArgsEntry ::=
        SEQUENCE {
                ciscoPagentAPIArgsChannel INTEGER,
                ciscoPagentAPIArgsIndex INTEGER,
                ciscoPagentAPIArgsString DisplayString
        }

ciscoPagentAPIArgsChannel OBJECT-TYPE
        SYNTAX          INTEGER (0..9)
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
                "The index of the channel of PCP"
        ::= { ciscoPagentAPIArgsEntry 3 }

ciscoPagentAPIArgsIndex OBJECT-TYPE
        SYNTAX          INTEGER (0..30)
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
                "The index of argument, starting from 0"
        ::= { ciscoPagentAPIArgsEntry 1 }

ciscoPagentAPIArgsString OBJECT-TYPE
        SYNTAX          DisplayString
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION     
                "The argument value"
        ::= { ciscoPagentAPIArgsEntry 2 }

-- end of ciscoPagentArgsTable --

-- beginning of ciscoPagentArgsAppendTable --

ciscoPagentAPIArgsAppendTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF CiscoPagentAPIArgsAppendEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "Table used to append strings to arguments to overcome
                 limitation of DisplayString length"
        ::= { ciscoPagentAPIObjects 3 }

ciscoPagentAPIArgsAppendEntry OBJECT-TYPE
        SYNTAX      CiscoPagentAPIArgsAppendEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "An entry in the append argument table"
        INDEX       { ciscoPagentAPIArgsAppendChannel, ciscoPagentAPIArgsAppendIndex }
        ::= { ciscoPagentAPIArgsAppendTable 1 }

CiscoPagentAPIArgsAppendEntry ::=
        SEQUENCE { 
                ciscoPagentAPIArgsAppendChannel INTEGER,
                ciscoPagentAPIArgsAppendIndex INTEGER,
                ciscoPagentAPIArgsAppendString DisplayString
        }

ciscoPagentAPIArgsAppendChannel OBJECT-TYPE
        SYNTAX          INTEGER (0..9)
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
                "Index of the current PCP channel"
        ::= { ciscoPagentAPIArgsAppendEntry 3 } 

ciscoPagentAPIArgsAppendIndex OBJECT-TYPE
        SYNTAX          INTEGER (0..30)
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
                "Index of the argument to append"
        ::= { ciscoPagentAPIArgsAppendEntry 1 }

ciscoPagentAPIArgsAppendString OBJECT-TYPE
        SYNTAX          DisplayString
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION     
                "Strings to append"
        ::= { ciscoPagentAPIArgsAppendEntry 2 }

-- end of ciscoPagentArgsAppendTable --

ciscoPagentAPIFreeChannel OBJECT-TYPE
        SYNTAX          INTEGER (0..9)
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION
                "A get on this variable returns a free channel.
                 A set frees up this channel."
        ::= { ciscoPagentAPIObjects 4 }
        
-- beginning of ciscoPagentAPIResultTable --

ciscoPagentAPIResultTable OBJECT-TYPE
        SYNTAX          SEQUENCE OF CiscoPagentAPIResultEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION 
                "A table to hold result string from API call"
        ::= { ciscoPagentAPIObjects 9 }

ciscoPagentAPIResultEntry OBJECT-TYPE
        SYNTAX          CiscoPagentAPIResultEntry
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
                "An entry in the result table."
        INDEX           { ciscoPagentAPIResultChannel, ciscoPagentAPIResultIndex }
        ::= { ciscoPagentAPIResultTable 1 }

CiscoPagentAPIResultEntry ::=
        SEQUENCE {
                ciscoPagentAPIResultChannel INTEGER,
                ciscoPagentAPIResultIndex INTEGER,
                ciscoPagentAPIResultString DisplayString
        }

ciscoPagentAPIResultChannel OBJECT-TYPE
        SYNTAX          INTEGER (0..9)
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION     
                "Index of the channel for PCP"
        ::= { ciscoPagentAPIResultEntry 3 }

ciscoPagentAPIResultIndex OBJECT-TYPE
        SYNTAX          INTEGER (0..255)
        MAX-ACCESS      not-accessible
        STATUS          current
        DESCRIPTION
                "Index of the result table."
        ::= { ciscoPagentAPIResultEntry 1 }

ciscoPagentAPIResultString OBJECT-TYPE
        SYNTAX          DisplayString
        MAX-ACCESS      read-write
        STATUS          current
        DESCRIPTION     
                "Variable to hold the result string, in case the string
                 is long, it is broken into DisplayString of 255 chars and
                 stored in the table, one DisplayString per row."
        ::= { ciscoPagentAPIResultEntry 2 }

-- end of ciscoPagentAPIResultTable --

ciscoPagentAPINotifications OBJECT IDENTIFIER ::= { ciscoPagentAPIMIB 2 }

-- (no notifications are currently defined)


-- conformance information

ciscoPagentAPIConformance OBJECT IDENTIFIER ::= { ciscoPagentAPIMIB 3 }
ciscoPagentAPICompliances OBJECT IDENTIFIER ::= { ciscoPagentAPIConformance 1 }
ciscoPagentAPIGroups OBJECT IDENTIFIER ::= { ciscoPagentAPIConformance 2 }


-- compliance statements

ciscoPagentAPICompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for entities which implement
                the Cisco Pagent API MIB"
        MODULE  -- this module
--PSIM(Modif)           MANDATORY-GROUPS { ciscoPagentAPIGroup }
                MANDATORY-GROUPS { ciscoPagentGroup }
        ::= { ciscoPagentAPICompliances 1 }


-- units of conformance

ciscoPagentGroup OBJECT-GROUP
        OBJECTS {
                ciscoPagentAPIMethodTable,
                ciscoPagentAPIArgsTable,
                ciscoPagentAPIFreeChannel,
                ciscoPagentAPIArgsAppendTable,
                ciscoPagentAPIResultTable
        }
        STATUS  current
        DESCRIPTION
                "TBD"
        ::= { ciscoPagentAPIGroups 1 }


END